Virtualization techniques have been developed to enable computing devices to execute programs using a virtual memory space with a size exceeding the actual physical capacity of the memory on the device. This may particularly be of use on mobile and handheld devices that, due to physical size constraints, may have a reduced amount of process memory and data storage capacity relative to larger form factor devices. However, conventional virtual memory systems utilize memory swapping techniques in which unused regions of virtual memory may be swapped to a storage device coupled to the memory device to free regions of process memory. However, mobile and handheld devices often lack a swap file or swap partitions (e.g., a backing store) as used in some larger form factor devices. Without a backing store, regions of virtual memory may simply be discarded from process memory by the virtual memory system if additional memory is required to execute a new process. If the discarded virtual memory contains any modifications, those modifications may be lost during the discard, resulting in application termination or a loss or application state.